'''
什么是快速排序？

快速排序的基本思想是：通过一趟排序将待排记录分隔成独立的两部分，
其中一部分记录的关键字均比另一部分的关键字小，
则可分别对这两部分记录继续进行排序，以达到整个序列有序。
'''

def quick_sort(arr):
    if len(arr) < 2:
        return arr
    else:
        pivot = arr[0]
        # 小于基准值的元素
        less = [i for i in arr[1:] if i <= pivot]
        # 大于基准值的元素
        greater = [i for i in arr[1:] if i > pivot]
        return quick_sort(less) + [pivot] + quick_sort(greater)

# 示例
arr = [64, 25, 12, 22, 11]
sorted_arr = quick_sort(arr)
print(sorted_arr)